package openation;

import book.Book;
import book.BookList;

import java.util.Scanner;

/**
 * 创建一个借阅图书的类BorrowedOperation，用来实现图书的借阅
 * 继承接口IOperation，需要重写work这个抽象方法
 * 1重写work方法，参数为BookList书架类型，通过操作BookList来实现图书的借阅
 * 2输入需要借阅的图书名称，整型变量currentCount用来接收获取bookList.getCount()里面的值
 * 通过遍历数组来查找是否存在要借阅的书籍
 * 创建一个Book类的变量book，通过调用bookList.getBook，用来获取当前下标中的书籍是什么
 * if判断当前下标书籍的名称是否跟需要借阅的书籍名称一致
 * 找到之后在用if判断当选书籍的状态是true还是false，是否被借出，找到则返回，没找到给出提示
 */
public class BorrowedOperation implements IOperation{
    @Override
    public void work(BookList bookList) {

        System.out.println("请输入需要借阅的图书");

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入书名：");
        String name = scanner.nextLine();

        int currentCount = bookList.getCount();

        for (int i = 0; i < currentCount; i++) {

            Book book = bookList.getBook(i);

            if(book.getName().equals(name)) {
                if(!book.isBorrowed()) {
                    book.setBorrowed(true);
                    System.out.println("借阅成功");
                }else {
                    System.out.println("已经被借出");
                }
                return;
            }
        }

        System.out.println("没有你要借阅的图书");
    }
}
